package android.view;

import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.Point;
import android.graphics.Rect;

import java.util.ArrayList;

public interface EinkPWInterface {

    public static final int ANTIALIAS_TYPE_ANTIAUTO = 2;
    public static final int ANTIALIAS_TYPE_ANTIBFST = 3;
    public static final int ANTIALIAS_TYPE_ANTIFAUTO = 1;
    public static final int ANTIALIAS_TYPE_ANTIWFST = 4;
    public static final int ANTIALIAS_TYPE_NOANTI = 0;
    public static final boolean DEBUG = true;
    public static final int DEFAULT_BRUSH = 7;
    public static final int DEFAULT_PEN = 2;
    public static final int DEFAULT_PENCIL = 1;
    public static final int DEFAULT_PENTYPE = 2;
    public static final int DEFAULT_PEN_PIXELWIDTH = 2;
    public static final int DISPATH_TOUCH_ALL_DROP = 4;
    @Deprecated
    public static final int DISPATH_TOUCH_HOST_FIRST = 1;
    public static final int DISPATH_TOUCH_HOST_LATER = 2;
    public static final int DISPATH_TOUCH_HOST_NONE = 0;
    public static final int MAX_PEN_WIDTH_PIXEL = 9;
    public static final int MIN_PEN_WIDTH_PIXEL = 0;
    public static final int PENTYPE_BRUSH_1 = 4;
    public static final int PENTYPE_BRUSH_2 = 5;
    public static final int PENTYPE_BRUSH_3 = 6;
    public static final int PENTYPE_BRUSH_4 = 7;
    public static final int PENTYPE_BRUSH_5 = 8;
    public static final int PENTYPE_CUSTOMER_START = 9;
    public static final int PENTYPE_FIXWIDTH = 0;
    public static final int PENTYPE_PENCIL = 1;
    public static final int PENTYPE_PEN_1 = 2;
    public static final int PENTYPE_PEN_2 = 3;
    public static final int PRESSURE_HIGH = 2;
    public static final int PRESSURE_LOW = 0;
    public static final int PRESSURE_MEDIUM = 1;
    public static final int PRESSURE_XHIGH = 3;
    public static final int RP_SPEED_NOWAIT = 3;
    public static final int RP_SPEED_SLOW = 0;
    public static final int RP_SPEED_X1 = 1;
    public static final int RP_SPEED_X2 = 2;
    public static final int SELOBJ_TYPE_BMP = 1;
    public static final int SELOBJ_TYPE_GEOMETRY = 4;
    public static final int SELOBJ_TYPE_TXT = 2;
    public static final int SELOBJ_TYPE_WP = 3;
    public static final String TAG = "EinkPW-1.3.0";
    @Deprecated
    public static final int WT_DEFAULT_PDSIZE = 60;
    @Deprecated
    public static final int WT_TYPE_INTERSECTED = 0;
    @Deprecated
    public static final int WT_TYPE_LINEFIGURE = 2;
    @Deprecated
    public static final int WT_TYPE_MATTS = 1;
    @Deprecated
    public static final int WT_TYPE_NONE = -1;
    @Deprecated
    public static final int WT_TYPE_SINGLELINE = 3;
    @Deprecated
    public static final int WT_TYPE_UNKNOW = -1;

    @Deprecated
    public interface BackGroundMatts {
        void drawAllUnits(Canvas canvas, View view);

        int getWTUnitId();
    }

    public interface OnUpdatePointWidthCallBack {
        float getPointWidth(int i, int i2, PWInputPoint pWInputPoint, float f);
    }

    public interface PWDrawEvent {
        void onOneWordDone(Bitmap bitmap, Rect rect);

        void onTouchDrawEnd(Bitmap bitmap, Rect rect, ArrayList<Point> arrayList);

        void onTouchDrawStart(Bitmap bitmap, boolean z);
    }

    public interface PWDrawEventWithPoint {
        void onOneWordDone(Bitmap bitmap, Rect rect);

        void onTouchDrawEnd(Bitmap bitmap, Rect rect, PWInputPoint pWInputPoint, PWInputPoint pWInputPoint2);

        void onTouchDrawStart(Bitmap bitmap, boolean z, PWInputPoint pWInputPoint);
    }

    public interface PWEraseEventListener {
        void onEraseDone(Bitmap bitmap, Rect rect);

        boolean onEraseEvent(MotionEvent motionEvent, boolean z);
    }

    public interface PWEventClickCallback {
        void onClick(Bitmap bitmap, int i, int i2);
    }

    public interface PWLSBitmapListener extends PWSaveBitmapListener {
        void loadPngDone(String str, boolean z);

        void loadTchDone(String str, boolean z);

        void saveAllDone(String str, String str2);
    }

    @Deprecated
    public interface PWSaveBitmapListener {
        void saveDone(String str);
    }

    public interface PWSelectObjStatusListener {
        void onMove(Bitmap bitmap, Rect rect, Rect rect2, Object obj);

        void onRemove(Bitmap bitmap, Rect rect, Rect rect2, Object obj);

        void onSelect(Bitmap bitmap, Rect rect, Rect rect2, Object obj);

        void onUnSelect(Bitmap bitmap, Rect rect, Rect rect2, Object obj);
    }

    public interface PWTouchEventListener {
        void onPWTouchEvent(MotionEvent motionEvent, PWInputPoint pWInputPoint);
    }

    public interface RepaintListener {
        void onRepaintDone(boolean z);
    }

    void DrawPWBitmapInternal(Canvas canvas);

    void OSULOG(String str, boolean z);

    boolean addDirtyRects(RectArray rectArray, int i);

    @Deprecated
    void addGrayRect(Rect rect);

    void addOnTopView(View view);

    boolean addOneDirtyRect(Rect rect, boolean z, int i);

    int addSelectObj(int i, Bitmap bitmap, Rect rect, Object obj, PWSelectObjStatusListener pWSelectObjStatusListener, boolean z);

    void addUnWriteRect(Rect rect);

    boolean addWritableRects(ArrayList<Rect> arrayList);

    void clearContent(Rect rect, boolean z, boolean z2);

    @Deprecated
    void clearContent(Rect rect, boolean z, boolean z2, boolean z3);

    @Deprecated
    void clearGrayRectList();

    @Deprecated
    void clearPWRect(Rect rect);

    void clearUnWriteRectList();

    void disablePWInput(boolean z);

    void disablePenErase(boolean z);

    void disableTouchInput(boolean z);

    @Deprecated
    void dispalyPWBitmapOnGone(boolean z);

    void dumpPointLists(String str);

    @Deprecated
    boolean emulateLastTouchInput();

    void enablePenClick(boolean z);

    void enablePenClick(boolean z, PWEventClickCallback pWEventClickCallback);

    void enableTouchDispatch(int i);

    boolean freeCachePWBitmapFilePath(String str);

    void freePureWriteBitmap(Bitmap bitmap);

    Rect getAllPWListDrawRect();

    int getAvailableRedo();

    int getAvailableRepaintStep();

    int getAvailableUndo();

    @Deprecated
    int getBackGroundMattsType();

    @Deprecated
    BackGroundMatts getBgMatts();

    Rect getCurPWListDrawRect();

    int getDrawObjectPaintAntiAlias();

    boolean getDrawObjectPaintFill();

    int getDrawObjectType();

    Paint getDrawingPaint();

    Paint getErasingPaint();

    Bitmap getFloatBitmap();

    Canvas getFloatBitmapCanvas();

    @Deprecated
    ArrayList<Rect> getGrayRectList();

    @Deprecated
    View getHostView();

    @Deprecated
    ArrayList<Rect> getHostViewDirty();

    @Deprecated
    boolean getNeedSaveFiles();

    String getPWBitmapFilePath();

    String getPWTouchFilePath();

    @Deprecated
    float getPenAdjRate();

    int getPenColor();

    int getPenEraseWidth();

    int getPenSettingWidth();

    int getPenType();

    Bitmap getPureWriteBitmap();

    Bitmap getPureWriteBitmapRef();

    Rect getScrollRect();

    int getSelectPixelDistance();

    int getSeqId();

    ArrayList<PWInputPoint> getStepPointArray(int i);

    int getTouchDispatch();

    ArrayList<Rect> getUnWriteRectList();

    Paint getUndoPaint();

    @Deprecated
    Rect getWinFrame();

    void invalidateHost(Rect rect);

    boolean isErasing();

    boolean isPenEraseDisable();

    boolean isPenTypeValid(int i);

    boolean isRepainting();

    @Deprecated
    Canvas lockCanvasFast();

    void onHostViewAttachedToWindow();

    void onHostViewDetachedFromWindow();

    void onHostViewEnableChanged(boolean z);

    void onHostViewVisibleChanged(boolean z);

    void onWindowChanged();

    @Deprecated
    void postCanvas(Canvas canvas, boolean z);

    @Deprecated
    void postCanvasFast(Canvas canvas, Rect rect, boolean z);

    void postDrawObjectCallback(PWDrawObjectHandler pWDrawObjectHandler, Object obj, int i);

    boolean reDo();

    boolean reDo(int i, int i2);

    @Deprecated
    void registerBgMatts(BackGroundMatts backGroundMatts);

    void registerDrawObjectHandler(PWDrawObjectHandler pWDrawObjectHandler);

    void registerPointWidthCallBack(int i, OnUpdatePointWidthCallBack onUpdatePointWidthCallBack);

    void removeOnTopView(View view);

    boolean removeOnTopViewX(View view);

    void removeSelectObj(int i, Object obj);

    @Deprecated
    boolean repaintOnePoint();

    boolean repaintStep(int i, int i2, int i3, int i4, RepaintListener repaintListener);

    void restoreCpuFreq();

    boolean rmAllWritableRects();

    void saveBitmap(PWLSBitmapListener pWLSBitmapListener);

    void saveBitmap(boolean z, PWSaveBitmapListener pWSaveBitmapListener);

    void sendBackEvent(MotionEvent motionEvent, boolean z);

    void sendBackEventAXYP(MotionEvent motionEvent, int i, int i2, int i3, int i4, float f, boolean z);

    void sendBackEventXY(MotionEvent motionEvent, int i, int i2, boolean z);

    @Deprecated
    void setBackGroupMatts(int i, int i2);

    @Deprecated
    void setBgMatts(BackGroundMatts backGroundMatts);

    void setCpuFreqLevel(int i);

    void setCurSelObjInVisible(boolean z);

    boolean setCurrentPWBmpAsSleepBmp();

    boolean setCurrentPWBmpAsSleepBmp(Bitmap bitmap);

    @Deprecated
    void setCustomerPenType(int i, float f, int i2, float f2);

    void setDrawEventListener(PWDrawEvent pWDrawEvent);

    void setDrawEventListener(PWDrawEventWithPoint pWDrawEventWithPoint);

    void setDrawObjectPaintAntiAlias(int i);

    void setDrawObjectPaintFill(boolean z);

    void setDrawObjectType(int i);

    @Deprecated
    void setEinkA2Gate(int i);

    @Deprecated
    void setEinkEraseA2Gate(int i);

    @Deprecated
    void setEinkEraseMode(short s);

    @Deprecated
    void setEinkFCMode(boolean z);

    @Deprecated
    void setEinkPWMode(short s);

    void setEraseEventListener(PWEraseEventListener pWEraseEventListener);

    void setFlyBlossEnable(boolean z);

    @Deprecated
    void setGrayEraseRect(Rect rect);

    @Deprecated
    void setHostView(View view);

    void setLoadFilePath(String str, boolean z);

    void setLoadFilePathWithListener(String str, boolean z, PWLSBitmapListener pWLSBitmapListener);

    @Deprecated
    void setNeedSaveFiles(boolean z);

    void setOneWordDelayMs(int i);

    void setPWBitmap(Bitmap bitmap);

    void setPWBitmap(Bitmap bitmap, Rect rect, Rect rect2, boolean z);

    void setPWBitmapInVisible(boolean z);

    void setPWEnabled(boolean z);

    void setPWTouchEventListener(PWTouchEventListener pWTouchEventListener);

    void setPenClickMoveOutMM(float f);

    int setPenColor(int i);

    int setPenEraseWidth(int i);

    float setPenEraseWidthExt(int i);

    int setPenSettingWidth(int i);

    float setPenSettingWidthExt(int i);

    void setPenType(int i);

    void setScrollRect(Rect rect);

    void setScrollView(View view);

    void setSelectPixelDistance(int i);

    void setVriSurface(Surface surface);

    @Deprecated
    void setWritableWhenImeInput(boolean z);

    void stopRepaint();

    @Deprecated
    void syncSurfaceDisplay();

    boolean unDo();

    boolean unDo(boolean z);

    boolean unDoByXY(int i, int i2);

    void unRegisterDrawObjectHandler(PWDrawObjectHandler pWDrawObjectHandler);

    void unregisterPointWidthCallBack(int i);

    void updateSufaceVisible(boolean z);
}